package entity

import dom "a-common/domain"

// SenBaby 宝宝表
type SenBaby struct {
	BabyId         int64  `xorm:"pk autoincr notnull"`             // 宝宝ID
	MomId          int64  `xorm:"notnull"`                         // 关联宝妈ID
	BabyCode       string `xorm:"varchar(64) notnull"`             // 宝宝编号
	BabyName       string `xorm:"varchar(200) notnull"`            // 宝宝名称
	BabySort       int    `xorm:"varchar(200) notnull"`            // 显示顺序
	Status         string `xorm:"varchar(1) default('1') notnull"` // 状态（0停用 1正常）
	dom.BaseStruct `xorm:"extends"`
}

// SenBabyVo 映射
type SenBabyVo struct {
	BabyId   int64  `json:"babyId,omitempty" xorm:"pk"`
	MomId    string `json:"momId,omitempty"`
	BabyCode string `json:"babyCode,omitempty"`
	BabyName string `json:"babyName,omitempty"`
	BabySort int    `json:"babySort"`
	Status   string `json:"status,omitempty"`
}

// SenBabyPageVo 页面
type SenBabyPageVo struct {
	SenBabyVo    `xorm:"extends"`
	dom.BaseJson `xorm:"extends"`
}

// SenBabyDto 传输
type SenBabyDto struct {
	SenBabyPageVo
	dom.BaseJson
	dom.PageDto
}

func (m *SenBabyDto) Validator() error {
	if m.PageNum < 1 {
		m.PageNum = 1
	}
	if m.PageSize < 1 {
		m.PageSize = 10
	}
	return nil
}

// SenBabyExportVo 导出
type SenBabyExportVo struct {
	BabyId    int64    `excel:"name:宝宝ID;" xorm:"pk"`
	BabyFloor string   `excel:"name:楼层;"`
	BabyNo    string   `excel:"name:宝宝编号;"`
	BabyName  string   `excel:"name:宝宝名称;"`
	BabySort  int      `excel:"name:宝宝排序;"`
	Status    string   `excel:"name:状态;replace:0_停用,1_使用中,2_未使用,3_维修中;"`
	CreatedAt dom.Time `excel:"name:创建时间;"`
}
